www.gusucode.com > Piwik 网站流量统计系统 v2.9.1PHP源码程序 > Piwik 网站流量统计系统 v2.9.1/How to install Piwik.html/piwik/plugins/Referrers/Referrers.php
<?php /** * Piwik - free/libre analytics platform * * @link http://piwik.org * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later * */ namespace Piwik\Plugins\Referrers; use Piwik\ArchiveProcessor; use Piwik\Common; use Piwik\Piwik; use Piwik\Plugins\CoreVisualizations\Visualizations\HtmlTable; /** * @see plugins/Referrers/functions.php */ require_once PIWIK_INCLUDE_PATH . '/plugins/Referrers/functions.php'; /** */ class Referrers extends \Piwik\Plugin { /** * @see Piwik\Plugin::getListHooksRegistered */ public function getListHooksRegistered() { return array( 'Insights.addReportToOverview' => 'addReportToInsightsOverview', 'Live.getAllVisitorDetails' => 'extendVisitorDetails' ); } public function extendVisitorDetails(&$visitor, $details) { $instance = new Visitor($details); $visitor['referrerType'] = $instance->getReferrerType(); $visitor['referrerTypeName'] = $instance->getReferrerTypeName(); $visitor['referrerName'] = $instance->getReferrerName(); $visitor['referrerKeyword'] = $instance->getKeyword(); $visitor['referrerKeywordPosition'] = $instance->getKeywordPosition(); $visitor['referrerUrl'] = $instance->getReferrerUrl(); $visitor['referrerSearchEngineUrl'] = $instance->getSearchEngineUrl(); $visitor['referrerSearchEngineIcon'] = $instance->getSearchEngineIcon(); } public function addReportToInsightsOverview(&$reports) { $reports['Referrers_getWebsites'] = array(); $reports['Referrers_getCampaigns'] = array(); $reports['Referrers_getSocials'] = array(); $reports['Referrers_getSearchEngines'] = array(); } /** * DataTable filter callback that returns the HTML prefix for a label in the * 'getAll' report based on the row's referrer type. * * @param int $referrerType The referrer type. * @return string */ public function setGetAllHtmlPrefix($referrerType) { // get singular label for referrer type $indexTranslation = ''; switch ($referrerType) { case Common::REFERRER_TYPE_DIRECT_ENTRY: $indexTranslation = 'Referrers_DirectEntry'; break; case Common::REFERRER_TYPE_SEARCH_ENGINE: $indexTranslation = 'General_ColumnKeyword'; break; case Common::REFERRER_TYPE_WEBSITE: $indexTranslation = 'Referrers_ColumnWebsite'; break; case Common::REFERRER_TYPE_CAMPAIGN: $indexTranslation = 'Referrers_ColumnCampaign'; break; default: // case of newsletter, partners, before Piwik 0.2.25 $indexTranslation = 'General_Others'; break; } $label = strtolower(Piwik::translate($indexTranslation)); // return html that displays it as grey & italic return '<span class="datatable-label-category"><em>(' . $label . ')</em></span>'; } }